﻿/*
* ============================================================================
* GNU Lesser General Public License
* ============================================================================
*
* BYDAN - Free Java BYDAN library.
* Copyright (C) 2008 
* 
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
* 
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
* Lesser General Public License for more details.
* 
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307, USA.
* 
* BYDAN Corporation
*/
package ByDan.AulaVirtual.Business.Entities;

import java.util.ArrayList;
import ByDan.Framework.AulaVirtual.Business.Entities.GeneralEntity;
import ByDan.Framework.AulaVirtual.Business.Entities.Mensajes;
import ByDan.Framework.AulaVirtual.Utils.ParameterDbType;
import ByDan.Framework.AulaVirtual.Utils.ParameterType;
import ByDan.Framework.AulaVirtual.Utils.ParametersMaintenance;
import ByDan.Framework.AulaVirtual.Utils.ParameterMaintenance;
import ByDan.Framework.AulaVirtual.Utils.ParameterValue;
import ByDan.Framework.AulaVirtual.Utils.ParametersType;
import java.sql.*;

public class Pagina extends GeneralEntity
{
	static  String strTableName="Pagina";
		
	public static String getStrTableName() 
	{
		return strTableName;
	}

	public static void setStrTableName(String strTableName) 
	{
		Pagina.strTableName = strTableName;
	}
	
	public static String getColumnNameId()
	{
		return "id";
	}
	
	public Pagina paginaOriginal;
	
	public Pagina getPaginaOriginal()
	{
		return paginaOriginal;
	}
	
	public  void  setPaginaOriginal(Pagina pagina)
	{
		try
		{
			paginaOriginal=pagina;
		}
		catch(Exception ex)
		{
			;
		}
	}
	
	
	
	
	UnidadCurricular relationship_unidadcurricular;
	 
	
	public UnidadCurricular getRelationship_UnidadCurricular()
	{
		return relationship_unidadcurricular;
	}

	
	
	public  void  setRelationship_UnidadCurricular(UnidadCurricular unidadcurricular)
	{
		try
		{
			relationship_unidadcurricular=unidadcurricular;
		}
		catch(Exception ex)
		{
			;
		}
	}


	
	
	ArrayList<UnidadCurricularTutorAlumnoPagina> relationship_unidadcurriculartutoralumnopaginas;
	ArrayList<ControlAjax> relationship_controlajaxs;
	ArrayList<CatalogoArchivoPagina> relationship_catalogoarchivopaginas;
	ArrayList<Imagen> relationship_imagens;
	ArrayList<TipoImagen> relationship_tipoimagens;
	ArrayList<CatalogoUrlPagina> relationship_catalogourlpaginas;
	ArrayList<TipoTitulo> relationship_tipotitulos;
	ArrayList<TipoParrafo> relationship_tipoparrafos;
	ArrayList<PreguntaPractica> relationship_preguntapracticas;
	ArrayList<Agrupacion> relationship_agrupacions;
	ArrayList<Parrafo> relationship_parrafos;
	ArrayList<CatalogoUrl> relationship_catalogourls;
	ArrayList<Titulo> relationship_titulos;
	ArrayList<UnidadCurricularTutorAlumno> relationship_unidadcurriculartutoralumnos;
	ArrayList<CatalogoArchivo> relationship_catalogoarchivos;
	
	
	public ArrayList<UnidadCurricularTutorAlumnoPagina> getRelationship_unidadcurriculartutoralumnopaginas()
	{
		return relationship_unidadcurriculartutoralumnopaginas;
	}

	public ArrayList<ControlAjax> getRelationship_controlajaxs()
	{
		return relationship_controlajaxs;
	}

	public ArrayList<CatalogoArchivoPagina> getRelationship_catalogoarchivopaginas()
	{
		return relationship_catalogoarchivopaginas;
	}

	public ArrayList<Imagen> getRelationship_imagens()
	{
		return relationship_imagens;
	}

	public ArrayList<TipoImagen> getRelationship_tipoimagens()
	{
		return relationship_tipoimagens;
	}

	public ArrayList<CatalogoUrlPagina> getRelationship_catalogourlpaginas()
	{
		return relationship_catalogourlpaginas;
	}

	public ArrayList<TipoTitulo> getRelationship_tipotitulos()
	{
		return relationship_tipotitulos;
	}

	public ArrayList<TipoParrafo> getRelationship_tipoparrafos()
	{
		return relationship_tipoparrafos;
	}

	public ArrayList<PreguntaPractica> getRelationship_preguntapracticas()
	{
		return relationship_preguntapracticas;
	}

	public ArrayList<Agrupacion> getRelationship_agrupacions()
	{
		return relationship_agrupacions;
	}

	public ArrayList<Parrafo> getRelationship_parrafos()
	{
		return relationship_parrafos;
	}

	public ArrayList<CatalogoUrl> getRelationship_catalogourls()
	{
		return relationship_catalogourls;
	}

	public ArrayList<Titulo> getRelationship_titulos()
	{
		return relationship_titulos;
	}

	public ArrayList<UnidadCurricularTutorAlumno> getRelationship_unidadcurriculartutoralumnos()
	{
		return relationship_unidadcurriculartutoralumnos;
	}

	public ArrayList<CatalogoArchivo> getRelationship_catalogoarchivos()
	{
		return relationship_catalogoarchivos;
	}

	
	
	public  void  setRelationship_UnidadCurricularTutorAlumnoPagina(ArrayList<UnidadCurricularTutorAlumnoPagina> unidadcurriculartutoralumnopaginas)
	{
		try
		{
			this.relationship_unidadcurriculartutoralumnopaginas=unidadcurriculartutoralumnopaginas;
		}
		catch(Exception ex)
		{
			;
		}
	}

	public  void  setRelationship_ControlAjax(ArrayList<ControlAjax> controlajaxs)
	{
		try
		{
			this.relationship_controlajaxs=controlajaxs;
		}
		catch(Exception ex)
		{
			;
		}
	}

	public  void  setRelationship_CatalogoArchivoPagina(ArrayList<CatalogoArchivoPagina> catalogoarchivopaginas)
	{
		try
		{
			this.relationship_catalogoarchivopaginas=catalogoarchivopaginas;
		}
		catch(Exception ex)
		{
			;
		}
	}

	public  void  setRelationship_Imagen(ArrayList<Imagen> imagens)
	{
		try
		{
			this.relationship_imagens=imagens;
		}
		catch(Exception ex)
		{
			;
		}
	}

	public  void  setRelationship_TipoImagen(ArrayList<TipoImagen> tipoimagens)
	{
		try
		{
			this.relationship_tipoimagens=tipoimagens;
		}
		catch(Exception ex)
		{
			;
		}
	}

	public  void  setRelationship_CatalogoUrlPagina(ArrayList<CatalogoUrlPagina> catalogourlpaginas)
	{
		try
		{
			this.relationship_catalogourlpaginas=catalogourlpaginas;
		}
		catch(Exception ex)
		{
			;
		}
	}

	public  void  setRelationship_TipoTitulo(ArrayList<TipoTitulo> tipotitulos)
	{
		try
		{
			this.relationship_tipotitulos=tipotitulos;
		}
		catch(Exception ex)
		{
			;
		}
	}

	public  void  setRelationship_TipoParrafo(ArrayList<TipoParrafo> tipoparrafos)
	{
		try
		{
			this.relationship_tipoparrafos=tipoparrafos;
		}
		catch(Exception ex)
		{
			;
		}
	}

	public  void  setRelationship_PreguntaPractica(ArrayList<PreguntaPractica> preguntapracticas)
	{
		try
		{
			this.relationship_preguntapracticas=preguntapracticas;
		}
		catch(Exception ex)
		{
			;
		}
	}

	public  void  setRelationship_Agrupacion(ArrayList<Agrupacion> agrupacions)
	{
		try
		{
			this.relationship_agrupacions=agrupacions;
		}
		catch(Exception ex)
		{
			;
		}
	}

	public  void  setRelationship_Parrafo(ArrayList<Parrafo> parrafos)
	{
		try
		{
			this.relationship_parrafos=parrafos;
		}
		catch(Exception ex)
		{
			;
		}
	}

	public  void  setRelationship_CatalogoUrl(ArrayList<CatalogoUrl> catalogourls)
	{
		try
		{
			this.relationship_catalogourls=catalogourls;
		}
		catch(Exception ex)
		{
			;
		}
	}

	public  void  setRelationship_Titulo(ArrayList<Titulo> titulos)
	{
		try
		{
			this.relationship_titulos=titulos;
		}
		catch(Exception ex)
		{
			;
		}
	}

	public  void  setRelationship_UnidadCurricularTutorAlumno(ArrayList<UnidadCurricularTutorAlumno> unidadcurriculartutoralumnos)
	{
		try
		{
			this.relationship_unidadcurriculartutoralumnos=unidadcurriculartutoralumnos;
		}
		catch(Exception ex)
		{
			;
		}
	}

	public  void  setRelationship_CatalogoArchivo(ArrayList<CatalogoArchivo> catalogoarchivos)
	{
		try
		{
			this.relationship_catalogoarchivos=catalogoarchivos;
		}
		catch(Exception ex)
		{
			;
		}
	}

	
	private static Boolean blnDeleteCascade=true;
	private static String QueryInsert="insert into aulavirtualme_dbo.Pagina set ISACTIVE=?,ISEXPIRED=?,VERSIONROW=CURRENT_TIMESTAMP,IDUNIDADCURRICULAR=?,CODIGO=?,NOMBRE=?,ORDEN=?,NUMEROELEMENTOS=?,ESTADO=?,PATH=?";
	private static String QueryUpdate="update aulavirtualme_dbo.Pagina set ISACTIVE=?,ISEXPIRED=?,VERSIONROW=CURRENT_TIMESTAMP,IDUNIDADCURRICULAR=?,CODIGO=?,NOMBRE=?,ORDEN=?,NUMEROELEMENTOS=?,ESTADO=?,PATH=? where id=? AND versionRow=?";
	private static String QueryDelete="delete from aulavirtualme_dbo.Pagina where id=?";
	public static String QuerySelect="select aulavirtualme_dbo.Pagina.id,aulavirtualme_dbo.Pagina.isActive,aulavirtualme_dbo.Pagina.isExpired,aulavirtualme_dbo.Pagina.versionRow,aulavirtualme_dbo.Pagina.IDUNIDADCURRICULAR,aulavirtualme_dbo.Pagina.CODIGO,aulavirtualme_dbo.Pagina.NOMBRE,aulavirtualme_dbo.Pagina.ORDEN,aulavirtualme_dbo.Pagina.NUMEROELEMENTOS,aulavirtualme_dbo.Pagina.ESTADO,aulavirtualme_dbo.Pagina.PATH from aulavirtualme_dbo.Pagina";
	 
	Long field_bigIdUnidadCurricular;
	String field_strCodigo;
	String field_strNombre;
	Integer field_intOrden;
	Integer field_intNumeroelementos;
	Boolean field_bitEstado;
	String field_strPath;
				
	public Pagina ()
    {
		super();		
 		field_bigIdUnidadCurricular=-1L;
 		field_strCodigo="";
 		field_strNombre="";
 		field_intOrden=-1;
 		field_intNumeroelementos=-1;
 		field_bitEstado=null;
 		field_strPath=null;
		
		
		relationship_unidadcurricular=new UnidadCurricular();
		
		
		relationship_unidadcurriculartutoralumnopaginas=new ArrayList<UnidadCurricularTutorAlumnoPagina>();
		relationship_controlajaxs=new ArrayList<ControlAjax>();
		relationship_catalogoarchivopaginas=new ArrayList<CatalogoArchivoPagina>();
		relationship_imagens=new ArrayList<Imagen>();
		relationship_tipoimagens=new ArrayList<TipoImagen>();
		relationship_catalogourlpaginas=new ArrayList<CatalogoUrlPagina>();
		relationship_tipotitulos=new ArrayList<TipoTitulo>();
		relationship_tipoparrafos=new ArrayList<TipoParrafo>();
		relationship_preguntapracticas=new ArrayList<PreguntaPractica>();
		relationship_agrupacions=new ArrayList<Agrupacion>();
		relationship_parrafos=new ArrayList<Parrafo>();
		relationship_catalogourls=new ArrayList<CatalogoUrl>();
		relationship_titulos=new ArrayList<Titulo>();
		relationship_unidadcurriculartutoralumnos=new ArrayList<UnidadCurricularTutorAlumno>();
		relationship_catalogoarchivos=new ArrayList<CatalogoArchivo>();
		
		super.setQueryInsert(QueryInsert);
		super.setQueryUpdate(QueryUpdate);
		super.setQueryDelete(QueryDelete);
		super.setQuerySelect(QuerySelect);
		
    } 
	
	public static Boolean getBlnDeleteCascade() 
	{
		return blnDeleteCascade;
	}

	public static void setBlnDeleteCascade(Boolean blnDeleteCascade) 
	{
		Pagina.blnDeleteCascade = blnDeleteCascade;
	}
	
	public static String getTableName()
    {
         return "aulavirtualme_dbo.Pagina";
    }
	
    
	public static String getColumnNameidUnidadCurricular()
	{
		return "idUnidadCurricular";
	}
    
	public static String getColumnNameCodigo()
	{
		return "Codigo";
	}
    
	public static String getColumnNameNombre()
	{
		return "Nombre";
	}
    
	public static String getColumnNameOrden()
	{
		return "Orden";
	}
    
	public static String getColumnNameNumeroElementos()
	{
		return "NumeroElementos";
	}
    
	public static String getColumnNameEstado()
	{
		return "Estado";
	}
    
	public static String getColumnNamePath()
	{
		return "Path";
	}
     
    
	public Long getField_bigIdUnidadCurricular()
	{
		return field_bigIdUnidadCurricular;
	}
    
	public String getField_strCodigo()
	{
		return field_strCodigo;
	}
    
	public String getField_strNombre()
	{
		return field_strNombre;
	}
    
	public Integer getField_intOrden()
	{
		return field_intOrden;
	}
    
	public Integer getField_intNumeroelementos()
	{
		return field_intNumeroelementos;
	}
    
	public Boolean getField_bitEstado()
	{
		return field_bitEstado;
	}
    
	public String getField_strPath()
	{
		return field_strPath;
	}
	
    
	public void setField_bigIdUnidadCurricular(Long newField_bigIdUnidadCurricular)throws Exception
	{
		try
		{
			if(this.field_bigIdUnidadCurricular!=newField_bigIdUnidadCurricular)
			{
				if(newField_bigIdUnidadCurricular==null)
				{
					throw new Exception(this.getTableName()+":"+ Mensajes.getMensajeExcepcionValorNulo()+" en columna "+Pagina.getColumnNameidUnidadCurricular());
				}

				this.field_bigIdUnidadCurricular=newField_bigIdUnidadCurricular;
				this.setIsChanged(true);
			}
		}
		catch(Exception ex)
		{
			throw ex;
		}
	}
    
	public void setField_strCodigo(String newField_strCodigo)throws Exception
	{
		try
		{
			if(this.field_strCodigo!=newField_strCodigo)
			{
				if(newField_strCodigo==null)
				{
					throw new Exception(this.getTableName()+":"+ Mensajes.getMensajeExcepcionValorNulo()+" en columna "+Pagina.getColumnNameCodigo());
				}

				this.field_strCodigo=newField_strCodigo;
				this.setIsChanged(true);
			}
		}
		catch(Exception ex)
		{
			throw ex;
		}
	}
    
	public void setField_strNombre(String newField_strNombre)throws Exception
	{
		try
		{
			if(this.field_strNombre!=newField_strNombre)
			{
				if(newField_strNombre==null)
				{
					throw new Exception(this.getTableName()+":"+ Mensajes.getMensajeExcepcionValorNulo()+" en columna "+Pagina.getColumnNameNombre());
				}

				this.field_strNombre=newField_strNombre;
				this.setIsChanged(true);
			}
		}
		catch(Exception ex)
		{
			throw ex;
		}
	}
    
	public void setField_intOrden(Integer newField_intOrden)throws Exception
	{
		try
		{
			if(this.field_intOrden!=newField_intOrden)
			{
				if(newField_intOrden==null)
				{
					throw new Exception(this.getTableName()+":"+ Mensajes.getMensajeExcepcionValorNulo()+" en columna "+Pagina.getColumnNameOrden());
				}

				this.field_intOrden=newField_intOrden;
				this.setIsChanged(true);
			}
		}
		catch(Exception ex)
		{
			throw ex;
		}
	}
    
	public void setField_intNumeroelementos(Integer newField_intNumeroelementos)throws Exception
	{
		try
		{
			if(this.field_intNumeroelementos!=newField_intNumeroelementos)
			{
				if(newField_intNumeroelementos==null)
				{
					throw new Exception(this.getTableName()+":"+ Mensajes.getMensajeExcepcionValorNulo()+" en columna "+Pagina.getColumnNameNumeroElementos());
				}

				this.field_intNumeroelementos=newField_intNumeroelementos;
				this.setIsChanged(true);
			}
		}
		catch(Exception ex)
		{
			throw ex;
		}
	}
    
	public void setField_bitEstado(Boolean newField_bitEstado)
	{
		if(this.field_bitEstado!=newField_bitEstado)
		{
			this.field_bitEstado=newField_bitEstado;
			this.setIsChanged(true);
		}
	}
    
	public void setField_strPath(String newField_strPath)
	{
		if(this.field_strPath!=newField_strPath)
		{
			this.field_strPath=newField_strPath;
			this.setIsChanged(true);
		}
	}
		
	public  void BuildParametersMaintenance(ParameterDbType newDbType,ParametersType parametersType) throws Exception
	{
		try
		{
			ParametersMaintenance parametersMaintenance=super.getParametersMaintenance();		
			ArrayList<ParameterMaintenance> parametersTemp=new ArrayList<ParameterMaintenance>();
			ParameterMaintenance parameterMaintenance;
			ParameterValue<Long> parameterMaintenanceValueId;
			
				if(!parametersType.equals(ParametersType.DELETE))
				{		
					parameterMaintenance=new ParameterMaintenance();
					parameterMaintenance.setOrder(1);		
					parameterMaintenance.setParameterMaintenanceType(ParameterType.BOOLEAN);
					ParameterValue<Boolean> parameterMaintenanceValueIsactive=new ParameterValue<Boolean>();
					parameterMaintenanceValueIsactive.setValue(this.getIsActive());
					parameterMaintenance.setParameterMaintenanceValue(parameterMaintenanceValueIsactive);
					parametersTemp.add(parameterMaintenance);
					
					parameterMaintenance=new ParameterMaintenance();
					parameterMaintenance.setOrder(2);		
					parameterMaintenance.setParameterMaintenanceType(ParameterType.BOOLEAN);
					ParameterValue<Boolean> parameterMaintenanceValueIsexpired=new ParameterValue<Boolean>();
					parameterMaintenanceValueIsexpired.setValue(this.getIsExpired());
					parameterMaintenance.setParameterMaintenanceValue(parameterMaintenanceValueIsexpired);
					parametersTemp.add(parameterMaintenance);
					
					parameterMaintenance=new ParameterMaintenance();
					parameterMaintenance.setOrder(3);		
					parameterMaintenance.setParameterMaintenanceType(ParameterType.LONG);
					ParameterValue<Long> parameterMaintenanceValueIdUnidadCurricular=new ParameterValue<Long>();
					parameterMaintenanceValueIdUnidadCurricular.setValue(this.getField_bigIdUnidadCurricular());
					parameterMaintenance.setParameterMaintenanceValue(parameterMaintenanceValueIdUnidadCurricular);
					parametersTemp.add(parameterMaintenance);
					
					parameterMaintenance=new ParameterMaintenance();
					parameterMaintenance.setOrder(4);		
					parameterMaintenance.setParameterMaintenanceType(ParameterType.STRING);
					ParameterValue<String> parameterMaintenanceValueCodigo=new ParameterValue<String>();
					parameterMaintenanceValueCodigo.setValue(this.getField_strCodigo());
					parameterMaintenance.setParameterMaintenanceValue(parameterMaintenanceValueCodigo);
					parametersTemp.add(parameterMaintenance);
					
					parameterMaintenance=new ParameterMaintenance();
					parameterMaintenance.setOrder(5);		
					parameterMaintenance.setParameterMaintenanceType(ParameterType.STRING);
					ParameterValue<String> parameterMaintenanceValueNombre=new ParameterValue<String>();
					parameterMaintenanceValueNombre.setValue(this.getField_strNombre());
					parameterMaintenance.setParameterMaintenanceValue(parameterMaintenanceValueNombre);
					parametersTemp.add(parameterMaintenance);
					
					parameterMaintenance=new ParameterMaintenance();
					parameterMaintenance.setOrder(6);		
					parameterMaintenance.setParameterMaintenanceType(ParameterType.INT);
					ParameterValue<Integer> parameterMaintenanceValueOrden=new ParameterValue<Integer>();
					parameterMaintenanceValueOrden.setValue(this.getField_intOrden());
					parameterMaintenance.setParameterMaintenanceValue(parameterMaintenanceValueOrden);
					parametersTemp.add(parameterMaintenance);
					
					parameterMaintenance=new ParameterMaintenance();
					parameterMaintenance.setOrder(7);		
					parameterMaintenance.setParameterMaintenanceType(ParameterType.INT);
					ParameterValue<Integer> parameterMaintenanceValueNumeroelementos=new ParameterValue<Integer>();
					parameterMaintenanceValueNumeroelementos.setValue(this.getField_intNumeroelementos());
					parameterMaintenance.setParameterMaintenanceValue(parameterMaintenanceValueNumeroelementos);
					parametersTemp.add(parameterMaintenance);
					
					parameterMaintenance=new ParameterMaintenance();
					parameterMaintenance.setOrder(8);		
					parameterMaintenance.setParameterMaintenanceType(ParameterType.BOOLEAN);
					ParameterValue<Boolean> parameterMaintenanceValueEstado=new ParameterValue<Boolean>();
					parameterMaintenanceValueEstado.setValue(this.getField_bitEstado());
					parameterMaintenance.setParameterMaintenanceValue(parameterMaintenanceValueEstado);
					parametersTemp.add(parameterMaintenance);
					
					parameterMaintenance=new ParameterMaintenance();
					parameterMaintenance.setOrder(9);		
					parameterMaintenance.setParameterMaintenanceType(ParameterType.STRING);
					ParameterValue<String> parameterMaintenanceValuePath=new ParameterValue<String>();
					parameterMaintenanceValuePath.setValue(this.getField_strPath());
					parameterMaintenance.setParameterMaintenanceValue(parameterMaintenanceValuePath);
					parametersTemp.add(parameterMaintenance);
					
						if(parametersType.equals(ParametersType.UPDATE))
						{					
							parameterMaintenance=new ParameterMaintenance();
							parameterMaintenance.setOrder(10);
							parameterMaintenance.setParameterMaintenanceType(ParameterType.LONG);
							parameterMaintenanceValueId=new ParameterValue<Long>();
							parameterMaintenanceValueId.setValue(this.getId());
							parameterMaintenance.setParameterMaintenanceValue(parameterMaintenanceValueId);		
							parametersTemp.add(parameterMaintenance);
							
							parameterMaintenance=new ParameterMaintenance();
							parameterMaintenance.setOrder(11);
							parameterMaintenance.setParameterMaintenanceType(ParameterType.TIMESTAMP);
							ParameterValue<Timestamp> parameterMaintenanceValueVersionRow=new ParameterValue<Timestamp>();
							parameterMaintenanceValueVersionRow.setValue(this.getVersionRow());
							parameterMaintenance.setParameterMaintenanceValue(parameterMaintenanceValueVersionRow);		
							parametersTemp.add(parameterMaintenance);					
						}
				}
				else
				{
					parameterMaintenance=new ParameterMaintenance();
					parameterMaintenance.setOrder(1);
					parameterMaintenance.setParameterMaintenanceType(ParameterType.LONG);
					parameterMaintenanceValueId=new ParameterValue<Long>();
					parameterMaintenanceValueId.setValue(this.getId());
					parameterMaintenance.setParameterMaintenanceValue(parameterMaintenanceValueId);		
					parametersTemp.add(parameterMaintenance);
				}
			
			parametersMaintenance= new ParametersMaintenance();
			parametersMaintenance.setDbType(newDbType);
			parametersMaintenance.setParametersMaintenance(parametersTemp);
			super.setParametersMaintenance(parametersMaintenance);		
		}
		catch(Exception ex)
		{
			throw ex;
		}
	}
}
